/**
	* Copyright (c) minuteproject, minuteproject@gmail.com
	* All rights reserved.
	* 
	* Licensed under the Apache License, Version 2.0 (the "License")
	* you may not use this file except in compliance with the License.
	* You may obtain a copy of the License at
	* 
	* http://www.apache.org/licenses/LICENSE-2.0
	* 
	* Unless required by applicable law or agreed to in writing, software
	* distributed under the License is distributed on an "AS IS" BASIS,
	* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
	* See the License for the specific language governing permissions and
	* limitations under the License.
	* 
	* More information on minuteproject:
	* twitter @minuteproject
	* wiki http://minuteproject.wikispaces.com 
	* blog http://minuteproject.blogspot.net
	* 
*/
/**
	* template reference : 
	* - name : OpenxavaDomainObjectUML
	* - file name : DomainObjectUMLJPAAnnotationOXAnnotationV4.vm
*/
package sistema_oficial.sistema_oficial.domain.sistemaoficial;

//MP-MANAGED-ADDED-AREA-BEGINNING @import@
//MP-MANAGED-ADDED-AREA-ENDING @import@
import java.sql.*;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.util.Set;
import java.util.HashSet;

import javax.persistence.*;
import org.openxava.annotations.*;

import sistema_oficial.sistema_oficial.domain.sistemaoficial.EntraNivel3Externo;
import sistema_oficial.sistema_oficial.domain.sistemaoficial.LoteEmpacadoNivel3;
import sistema_oficial.sistema_oficial.domain.sistemaoficial.SaleForzadoEmpacadoNivel3;
import sistema_oficial.sistema_oficial.domain.sistemaoficial.SaleForzadoEmpaqueNivel3;
import sistema_oficial.sistema_oficial.domain.sistemaoficial.SaleForzadoProductoNivel3;
import sistema_oficial.sistema_oficial.domain.sistemaoficial.TransferidoNivel3Nivel0;
import sistema_oficial.sistema_oficial.domain.sistemaoficial.TransferidoNivel3Nivel2;
import sistema_oficial.sistema_oficial.domain.sistemaoficial.TransferidoNivel4Nivel3;
import sistema_oficial.sistema_oficial.domain.sistemaoficial.Puesto;

/**
 *
 * <p>Title: AreaEmpacadoNivel3</p>
 *
 * <p>Description: Domain Object describing a AreaEmpacadoNivel3 entity</p>
 *
 */
@Entity (name="AreaEmpacadoNivel3")
@Table (name="area_empacado_nivel3")
@Views({
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @view-base-area_empacado_nivel3@
	@View(
		name="base",
		members=
        "" 	
        + "codigo  ; "
        + "descripcion  ; "
        + "puestoIdentificador  ; "
		),
//MP-MANAGED-UPDATABLE-ENDING
	@View(
		name="Create", 
		extendsView="base"
	),
	@View(
		name="Update", 
		extendsView="base",
        members=
          "" 	
	    + "entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	),
	@View(extendsView="base",
        members=
          "" 	
	    + "entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	    + "transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo { transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo };" 
	),
    @View(name="areaEmpacadoNivel3DEFAULT_VIEW", 
	   members=
          " codigo ;" 	
        + "descripcion  ; "
	),
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @view-reference-area_empacado_nivel3@
    @View(name="reference", 
       extendsView="areaEmpacadoNivel3DEFAULT_VIEW"
//MP-MANAGED-UPDATABLE-ENDING
    )
})

@Tabs({
@Tab(
properties=
     " codigo "
    +",  descripcion "
)
,
@Tab(
name = "AreaEmpacadoNivel3Tab",
properties=
     " codigo "
    +",  descripcion "
)
,
@Tab(
name = "AreaEmpacadoNivel3TabWithRef",
properties=
     " codigo "
    +",  descripcion "
)
})
//MP-MANAGED-ADDED-AREA-BEGINNING @class-annotation@
//MP-MANAGED-ADDED-AREA-ENDING @class-annotation@
public class AreaEmpacadoNivel3 {

    @Id @Column(name="codigo" ,length=30)
    private String codigo; 

//MP-MANAGED-ADDED-AREA-BEGINNING @descripcion-field-annotation@
//MP-MANAGED-ADDED-AREA-ENDING @descripcion-field-annotation@

//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @ATTRIBUTE-descripcion@
    @Column(name="descripcion",  length=100, nullable=false,  unique=false)
    @Required
    private String descripcion;	
//MP-MANAGED-UPDATABLE-ENDING


//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @parent-Puesto-area_empacado_nivel3@
    @ManyToOne (fetch=FetchType.LAZY ,optional=false) //remove optional=false to aggragate but leads to a side effect when going directly to the entity: required check is not performed=> if no set DB check constraint is raised...
    @JoinColumn(name="puesto_identificador", nullable=false,  unique=false  )
    @ReferenceView ("reference") 
    private Puesto puestoIdentificador; 
    
//MP-MANAGED-UPDATABLE-ENDING
//children
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @child-entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo-area_empacado_nivel3@
    @OneToMany (targetEntity=sistema_oficial.sistema_oficial.domain.sistemaoficial.EntraNivel3Externo.class, fetch=FetchType.LAZY, mappedBy="areaEmpacadoNivel3Codigo", cascade=CascadeType.REMOVE)//, cascade=CascadeType.ALL)
    private Set <EntraNivel3Externo> entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<EntraNivel3Externo>(); 
   
//MP-MANAGED-UPDATABLE-ENDING
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @child-loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo-area_empacado_nivel3@
    @OneToMany (targetEntity=sistema_oficial.sistema_oficial.domain.sistemaoficial.LoteEmpacadoNivel3.class, fetch=FetchType.LAZY, mappedBy="areaEmpacadoNivel3Codigo", cascade=CascadeType.REMOVE)//, cascade=CascadeType.ALL)
    private Set <LoteEmpacadoNivel3> loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<LoteEmpacadoNivel3>(); 
   
//MP-MANAGED-UPDATABLE-ENDING
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @child-saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo-area_empacado_nivel3@
    @OneToMany (targetEntity=sistema_oficial.sistema_oficial.domain.sistemaoficial.SaleForzadoEmpacadoNivel3.class, fetch=FetchType.LAZY, mappedBy="areaEmpacadoNivel3Codigo", cascade=CascadeType.REMOVE)//, cascade=CascadeType.ALL)
    private Set <SaleForzadoEmpacadoNivel3> saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<SaleForzadoEmpacadoNivel3>(); 
   
//MP-MANAGED-UPDATABLE-ENDING
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @child-saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo-area_empacado_nivel3@
    @OneToMany (targetEntity=sistema_oficial.sistema_oficial.domain.sistemaoficial.SaleForzadoEmpaqueNivel3.class, fetch=FetchType.LAZY, mappedBy="areaEmpacadoNivel3Codigo", cascade=CascadeType.REMOVE)//, cascade=CascadeType.ALL)
    private Set <SaleForzadoEmpaqueNivel3> saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<SaleForzadoEmpaqueNivel3>(); 
   
//MP-MANAGED-UPDATABLE-ENDING
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @child-saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo-area_empacado_nivel3@
    @OneToMany (targetEntity=sistema_oficial.sistema_oficial.domain.sistemaoficial.SaleForzadoProductoNivel3.class, fetch=FetchType.LAZY, mappedBy="areaEmpacadoNivel3Codigo", cascade=CascadeType.REMOVE)//, cascade=CascadeType.ALL)
    private Set <SaleForzadoProductoNivel3> saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<SaleForzadoProductoNivel3>(); 
   
//MP-MANAGED-UPDATABLE-ENDING
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @child-transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo-area_empacado_nivel3@
    @OneToMany (targetEntity=sistema_oficial.sistema_oficial.domain.sistemaoficial.TransferidoNivel3Nivel0.class, fetch=FetchType.LAZY, mappedBy="areaEmpacadoNivel3Codigo", cascade=CascadeType.REMOVE)//, cascade=CascadeType.ALL)
    private Set <TransferidoNivel3Nivel0> transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<TransferidoNivel3Nivel0>(); 
   
//MP-MANAGED-UPDATABLE-ENDING
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @child-transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo-area_empacado_nivel3@
    @OneToMany (targetEntity=sistema_oficial.sistema_oficial.domain.sistemaoficial.TransferidoNivel3Nivel2.class, fetch=FetchType.LAZY, mappedBy="areaEmpacadoNivel3Codigo", cascade=CascadeType.REMOVE)//, cascade=CascadeType.ALL)
    private Set <TransferidoNivel3Nivel2> transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<TransferidoNivel3Nivel2>(); 
   
//MP-MANAGED-UPDATABLE-ENDING
//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @child-transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo-area_empacado_nivel3@
    @OneToMany (targetEntity=sistema_oficial.sistema_oficial.domain.sistemaoficial.TransferidoNivel4Nivel3.class, fetch=FetchType.LAZY, mappedBy="areaEmpacadoNivel3Codigo", cascade=CascadeType.REMOVE)//, cascade=CascadeType.ALL)
    private Set <TransferidoNivel4Nivel3> transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<TransferidoNivel4Nivel3>(); 
   
//MP-MANAGED-UPDATABLE-ENDING
//m2m
    /**
    * Default constructor
    */
    public AreaEmpacadoNivel3() {
    }


    public String getCodigo() {
        return codigo;
    }
	
    public void setCodigo (String codigo) {
        this.codigo =  codigo;
    }
    

//MP-MANAGED-UPDATABLE-BEGINNING-DISABLE @GETTER-SETTER-descripcion@
    public String getDescripcion() {
        return descripcion;
    }
	
    public void setDescripcion (String descripcion) {
        this.descripcion =  descripcion;
    } 
//MP-MANAGED-UPDATABLE-ENDING


    public Puesto getPuestoIdentificador () {  //
    	return puestoIdentificador;
    }
	
    public void setPuestoIdentificador (Puesto puestoIdentificador) {
    	this.puestoIdentificador = puestoIdentificador;//this.puestoIdentificador = puesto;
    }

    public Set<EntraNivel3Externo> getEntraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo() {
        if (entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo == null){
            entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<EntraNivel3Externo>();
        }
        return entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }

    public void setEntraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (Set<EntraNivel3Externo> entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo) {
        this.entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = entraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }	
    
    public void addEntraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (EntraNivel3Externo entraNivel3Externo) {
    	    getEntraNivel3ExternoAreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo().add(entraNivel3Externo);
    }
    
    public Set<LoteEmpacadoNivel3> getLoteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo() {
        if (loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo == null){
            loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<LoteEmpacadoNivel3>();
        }
        return loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }

    public void setLoteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (Set<LoteEmpacadoNivel3> loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo) {
        this.loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = loteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }	
    
    public void addLoteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (LoteEmpacadoNivel3 loteEmpacadoNivel3) {
    	    getLoteEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo().add(loteEmpacadoNivel3);
    }
    
    public Set<SaleForzadoEmpacadoNivel3> getSaleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo() {
        if (saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo == null){
            saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<SaleForzadoEmpacadoNivel3>();
        }
        return saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }

    public void setSaleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (Set<SaleForzadoEmpacadoNivel3> saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo) {
        this.saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = saleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }	
    
    public void addSaleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (SaleForzadoEmpacadoNivel3 saleForzadoEmpacadoNivel3) {
    	    getSaleForzadoEmpacadoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo().add(saleForzadoEmpacadoNivel3);
    }
    
    public Set<SaleForzadoEmpaqueNivel3> getSaleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo() {
        if (saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo == null){
            saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<SaleForzadoEmpaqueNivel3>();
        }
        return saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }

    public void setSaleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (Set<SaleForzadoEmpaqueNivel3> saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo) {
        this.saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = saleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }	
    
    public void addSaleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (SaleForzadoEmpaqueNivel3 saleForzadoEmpaqueNivel3) {
    	    getSaleForzadoEmpaqueNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo().add(saleForzadoEmpaqueNivel3);
    }
    
    public Set<SaleForzadoProductoNivel3> getSaleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo() {
        if (saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo == null){
            saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<SaleForzadoProductoNivel3>();
        }
        return saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }

    public void setSaleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (Set<SaleForzadoProductoNivel3> saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo) {
        this.saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = saleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }	
    
    public void addSaleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (SaleForzadoProductoNivel3 saleForzadoProductoNivel3) {
    	    getSaleForzadoProductoNivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo().add(saleForzadoProductoNivel3);
    }
    
    public Set<TransferidoNivel3Nivel0> getTransferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo() {
        if (transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo == null){
            transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<TransferidoNivel3Nivel0>();
        }
        return transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }

    public void setTransferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (Set<TransferidoNivel3Nivel0> transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo) {
        this.transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = transferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }	
    
    public void addTransferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (TransferidoNivel3Nivel0 transferidoNivel3Nivel0) {
    	    getTransferidoNivel3Nivel0AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo().add(transferidoNivel3Nivel0);
    }
    
    public Set<TransferidoNivel3Nivel2> getTransferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo() {
        if (transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo == null){
            transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<TransferidoNivel3Nivel2>();
        }
        return transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }

    public void setTransferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (Set<TransferidoNivel3Nivel2> transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo) {
        this.transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = transferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }	
    
    public void addTransferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (TransferidoNivel3Nivel2 transferidoNivel3Nivel2) {
    	    getTransferidoNivel3Nivel2AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo().add(transferidoNivel3Nivel2);
    }
    
    public Set<TransferidoNivel4Nivel3> getTransferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo() {
        if (transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo == null){
            transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = new HashSet<TransferidoNivel4Nivel3>();
        }
        return transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }

    public void setTransferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (Set<TransferidoNivel4Nivel3> transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo) {
        this.transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo = transferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo;
    }	
    
    public void addTransferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo (TransferidoNivel4Nivel3 transferidoNivel4Nivel3) {
    	    getTransferidoNivel4Nivel3AreaEmpacadoNivel3ViaAreaEmpacadoNivel3Codigo().add(transferidoNivel4Nivel3);
    }
    



//MP-MANAGED-ADDED-AREA-BEGINNING @implementation@
//MP-MANAGED-ADDED-AREA-ENDING @implementation@

}
